package cn.jilian.sys.service;

import java.util.List;
import java.util.Set;

import cn.jilian.entity.Menu;
import cn.jilian.entity.User;


public interface MenuService {
	
	Menu getMenu(Long id);
	
	List<Menu> getAllMenuTree(int rankId);
	
	List<Menu> getChildren(Long id,Integer rankId);
	
	List<Menu> getChildrenWithActions(Long id,Integer rankId);
	
	List<Menu> loadUserMenu(Long userId,Integer rankId);
	
	List<Menu> loadUserMenu(User user,Integer rankId);
	
	Set<String> getPerms(User user,Integer rankId);

	Menu saveMenu(Menu menu);
	
	Menu addMenu(Menu menu);
	
	void delete(long id);
	
	/**
	 * 更新菜单位置
	 * @param sid 菜单ID
	 * @param fid 新的父级ID
	 * @param seq 新的子序
	 * */
	int updateMenuLoc(long sid,long fid,int seq);
	
	
}
